1. Field of the Invention
The present invention relates generally to a serial cancellation architecture for a Coded Signal Processing Engine (CSPE) that is designed for interference cancellation in the reception of coded signals in a spread spectrum system. More specifically, the CSPE may be used in a cascading sense for successive acquisition, tracking and demodulation of pseudorandom (PN) coded signals in the presence of interference in a CDMA system.
2. Description of the Prior Art
In spread spectrum systems, whether it is a wireless communication system, a Global Positioning System (GPS) or a radar system, each transmitter may be assigned a unique code and in many instances each transmission from a transmitter is assigned a unique code. The code is nothing more than a sequence (often pseudorandom) of bits. Examples of codes include Gold codes (used in GPS—see Kaplan, Elliot D., Editor, Understanding GPS: Principles and Applications, Artech House 1996), Barker codes (used in radar—see Stimson, G. W., “An Introduction to Airborne Radar”, SciTech Publishing Inc., 1998) and Walsh codes (used in communications systems, such as cdmaOne—See IS-95). These codes may be used to spread the signal so that the resulting signal occupies some specified range of frequencies in the electromagnetic spectrum or the codes may be superimposed on another signal, which may also be a coded signal.
Assigning a unique code to each transmitter allows the receiver to distinguish between different transmitters. An example of a spread spectrum system that uses unique codes to distinguish between transmitters is a GPS system.
If a single transmitter has to broadcast different messages to different receivers, such as a base station in a wireless communication system broadcasting to multiple mobiles, one may use codes to distinguish between messages for each mobile. In this scenario, each symbol for a particular user is encoded using the code assigned to that user. By coding in this manner, the receiver, by knowing its own code, may decipher the message intended for it from the superposition of message signals received.
In some communication systems, a symbol is assigned to a sequence of bits that comprise a message. For example, a long digital message may be grouped into sets of M bit sequences where each unique sequence is assigned a symbol. For example, if M=6, then each set of 6 bits may assume one of 26=64 possibilities. Such a system would broadcast a waveform, called a symbol, which would represent a sequence of transmitted bits. For example, the symbol α might denote the sequence 101101 and the symbol β might denote the sequence 110010. In the spread spectrum version of such a system, these symbols are codes. An example of such a communication system is the mobile to base station (forward/down) link of cdmaOne.
In some instances, such as in a coded radar system, each pulse is assigned a unique code so that the receiver is able to distinguish between different pulses by the codes.
Of course, all of these techniques may be combined to distinguish between transmitters, messages, pulses and symbols in a single system. The key idea in all of these coded systems is that the receiver knows the code(s) of the message intended for it. By applying the code(s) correctly to the received signal, the receiver may extract the message for which it is intended. However, such receivers are more complex than receivers that distinguish between messages by time and/or frequency alone. Complexity arises because the signal received is a linear combination of all the coded signals present in the spectrum of interest at any given time. The receiver must be able to extract the message intended for it from this linear combination of coded signals.
The following section presents the problem of interference in linear algebraic terms and provides a method by which it may be cancelled.
Let H be a matrix containing the spread signal from source number 1 and let θ1 be the amplitude of the signal from this source. Let si be the spread signals for the remaining sources and let φi be the corresponding amplitudes. Suppose that the receiver is interested in source number 1. The signals from the other sources may be considered to be interference. The received signal is:y=H1+s2φ2+s3φ3+ . . . +spφp+n   (1)where n is the additive noise term, and p is the number of sources in the CDMA system. Let the length of the vector y be N, where N is the number of points in the integration window. The value of N is selected as part of the design process and is a trade-off between processing gain and complexity. N consecutive points of y will be referred to as a segment.
In a wireless communication system, the columns of the matrix H represent the various coded signals of interest and the elements of the vector θ are the amplitudes of the respective coded signals. For example, in the base station to mobile link of a cdmaOne system, the coded signals may include the various channels, i.e. pilot, paging, synchronization and traffic, of each base station's line-of-sight (LOS) or multipath fingers. In the mobile to base station link, the columns of the matrix H may be the coded signals from a mobile LOS or one of its multipath signals.
In a GPS system, the columns of the matrix H are the coded signals of interest broadcast by the GPS satellites.
In an array application, the columns of the matrix are steering vectors, or equivalent array pattern vectors. These vectors characterize the relative phase recorded by each antenna in the array as a function of the location and motion dynamics of the source as well as the arrangement of the antennas in the array. In the model presented above, each column of the matrix H signifies a steering vector corresponding to a particular source.
Equation (1) may be written in the following matrix form:
                                                        y              =                                                H                  ⁢                                                                          ⁢                  θ                                +                                  S                  ⁢                                                                          ⁢                  ϕ                                +                n                                                                                        =                                                                    [                    HS                    ]                                    ⁡                                      [                                                                                            θ                                                                                                                      ϕ                                                                                      ]                                                  +                n                                                                        (        2        )            where
H: spread signal matrix of the source of interest,
θ: amplitude vector of the source of interest,
S=[s2 . . . sp]: spread signal matrix of all the other sources, i.e., the interference, and
φ=[φ2 . . . φp]: interference amplitude vector.
Receivers that are currently in use correlate the measurement, y, with a replica of H to determine if H is present in the measurement. If H is detected, then the receiver knows the bit-stream transmitted by source number 1. Mathematically, this correlation operation is:correlation function=(HTH)−1HTy   (3)where T is the transpose operation.
Substituting for y from equation (2) illustrates the source of the power control requirement:
                                                                                                              (                                                                  H                        T                                            ⁢                      H                                        )                                                        -                    1                                                  ⁢                                  H                  T                                ⁢                y                            =                                                                    (                                                                  H                        T                                            ⁢                      H                                        )                                                        -                    1                                                  ⁢                                                      H                    T                                    ⁡                                      (                                                                  H                        ⁢                                                                                                  ⁢                        θ                                            +                                              S                        ⁢                                                                                                  ⁢                        ϕ                                            +                      n                                        )                                                                                                                          =                                                                                          (                                                                        H                          T                                                ⁢                        H                                            )                                                              -                      1                                                        ⁢                                      H                    T                                    ⁢                  H                  ⁢                                                                          ⁢                  θ                                +                                                                            (                                                                        H                          T                                                ⁢                        H                                            )                                                              -                      1                                                        ⁢                                      H                    T                                    ⁢                  S                  ⁢                                                                          ⁢                  ϕ                                +                                                                            (                                                                        H                          T                                                ⁢                        H                                            )                                                              -                      1                                                        ⁢                                      H                    T                                    ⁢                  n                                                                                                        =                              θ                +                                                                            (                                                                        H                          T                                                ⁢                        H                                            )                                                              -                      1                                                        ⁢                                      H                    T                                    ⁢                  S                  ⁢                                                                          ⁢                  ϕ                                +                                                                            (                                                                        H                          T                                                ⁢                        H                                            )                                                              -                      1                                                        ⁢                                      H                    T                                    ⁢                  n                                                                                        (        4        )            
The middle term, (HTH)−1HTSφ, in the above equation is the source of the near-far problem. If the codes are orthogonal, then this term reduces to zero, which implies that the receiver has to detect θ in the presence of noise, i.e. (HTH)−1HTn) only. As the amplitudes of the other sources increase, the term (HTH)−1HTSφ contributes a significant amount to the correlation, which makes the detection of θ more difficult.
The normalized correlation function, (HTH)−1HT, defined above, is in fact a matched filter and is based on an orthogonal projection of y onto the space spanned by H. When H and S are not orthogonal to each other, there is leakage of the components of S into the orthogonal projection of y onto H. This leakage is geometrically illustrated in FIG. 1. Note in FIG. 1, that if S were orthogonal to H, the leakage component is zero as is evident from equation 4. The CSPE provides a solution to this interference leakage issue.
One way to mitigate this interference is to remove the interference in y by means of a projection operation. Mathematically, a projection onto the space spanned by the columns of the matrix S is given by:Ps=S(STS)−1ST   (5)
A projection onto the space perpendicular to the space spanned by the columns of S is obtained by subtracting the above projection Ps from the identity matrix (a matrix with ones on the diagonal and zeros everywhere else). Mathematically, this projection is represented by:Ps⊥=I−Ps=I−S(STS)−1ST   (6)
The projection matrix Ps⊥ has the property that when it is applied to a signal of type Sφ, i.e., a signal that lies in the space spanned by the columns of S, it completely removes Sφ no matter what the value of φ. Namely, the projection is magnitude independent. This interference cancellation operation is illustrated in equation 7:Ps195 (Sφ)=(I−S(STS)−1ST)Sφ=Sφ−S(STS)−1STSφ=Sφ−Sφ=0   (7)
When applied to the measurement vector y, it cancels the interference terms:Ps⊥y=Ps⊥(Hθ+Sφ+n)=Ps⊥Hθ+Ps⊥Sφ+Ps⊥n=Ps⊥Hθ+Ps⊥n   (8)
Detection of the signal interest may then proceed with the processed measurement vector Ps⊥ y with the interference signal(s) S removed.
This method of projections and interference cancellation may be incorporated as an improvement to the baseline receiver for spread spectrum signal reception.
The present invention is a receiver with improved correlation properties that makes use of the principle of orthogonal projections as described in the patent applications identified and incorporated by reference above.